#ifndef _select_h_
#define _select_h_

#include <head.h>

#define SIZE 1024
#define NOW_MAX 20

typedef struct msg // 表示聊天时的信息
{ 
    char msg[SIZE];     // 消息内容
    char localname[20]; // 消息目的名称
    char account[20];   // 账户
    char fromname[20];  // 消息来源名称
    char password[20];  // 用户密码
    char signname[40];  // 个性签名
    int cmd;            // 工作模式
    int num;            // 用于保存文件复制的字节数
} Msg;

// 最大允许并行客户端数量
void regisc(int client_socket);
void main_menu(void);
int Ask_server(int client_socket);
int entry(int client_socket);
void user_menu(void);
void User_used(int client_socket);
void *readMsg(void *v);
void entry_out(int client_socket);
void chat_all(int client_socket);
void chat_one(int client_socket);
void client_logout(int client_socket);
void save(Msg *msg);
void look_chat();
void see_now_time(int client_socket);
void revise_sign(int client_socket);
void revise_password(int client_socket);
void client_guanli(int client_socket);
void transfer_file(int client_socket);       // 传输文件
void transfer_file_y(int client_socket);     // 同意接受文件
void transfer_file_n(int client_socket);     // 拒绝接受文件
void start_transfer_file(int client_socket); // 开始传输文件
void save_transfer_file(Msg *buf);           // 接受文件

#endif